// Delphi 4
{$IFDEF VER120}
  {$DEFINE DELPHI4}
  {$DEFINE DELPHI4_OR_ABOVE}
{$ENDIF}

// Delphi 5
{$IFDEF VER130}
  {$DEFINE DELPHI5}
  {$DEFINE DELPHI4_OR_ABOVE}
  {$DEFINE DELPHI5_OR_ABOVE}
{$ENDIF}

// Delphi 6
{$IFDEF VER140}
  {$DEFINE DELPHI6}
  {$DEFINE DELPHI4_OR_ABOVE}
  {$DEFINE DELPHI5_OR_ABOVE}
  {$DEFINE DELPHI6_OR_ABOVE}
{$ENDIF}

// Delphi 7
{$IFDEF VER150}
  {$DEFINE DELPHI7}
  {$DEFINE DELPHI4_OR_ABOVE}
  {$DEFINE DELPHI5_OR_ABOVE}
  {$DEFINE DELPHI6_OR_ABOVE}
  {$DEFINE DELPHI7_OR_ABOVE}
{$ENDIF}

// Delphi 8
{$IFDEF VER160}
  {$DEFINE DELPHI8}
  {$DEFINE DELPHI4_OR_ABOVE}
  {$DEFINE DELPHI5_OR_ABOVE}
  {$DEFINE DELPHI6_OR_ABOVE}
  {$DEFINE DELPHI7_OR_ABOVE}
  {$DEFINE DELPHI8_OR_ABOVE}
{$ENDIF}

// Delphi 2005
{$IFDEF VER170}
  {$DEFINE DELPHI2005}
  {$DEFINE DELPHI4_OR_ABOVE}
  {$DEFINE DELPHI5_OR_ABOVE}
  {$DEFINE DELPHI6_OR_ABOVE}
  {$DEFINE DELPHI7_OR_ABOVE}
  {$DEFINE DELPHI8_OR_ABOVE}
  {$DEFINE DELPHI2005_OR_ABOVE}
{$ENDIF}

// Delphi 2006
{$IFDEF VER180}
  {$DEFINE DELPHI2006}
  {$DEFINE DELPHI4_OR_ABOVE}
  {$DEFINE DELPHI5_OR_ABOVE}
  {$DEFINE DELPHI6_OR_ABOVE}
  {$DEFINE DELPHI7_OR_ABOVE}
  {$DEFINE DELPHI8_OR_ABOVE}
  {$DEFINE DELPHI2005_OR_ABOVE}
  {$DEFINE DELPHI2006_OR_ABOVE}
{$ENDIF}

// Delphi 2007 (Highlander)
{$IFDEF VER185}
  {$DEFINE DELPHI2007}
  {$DEFINE DELPHI4_OR_ABOVE}
  {$DEFINE DELPHI5_OR_ABOVE}
  {$DEFINE DELPHI6_OR_ABOVE}
  {$DEFINE DELPHI7_OR_ABOVE}
  {$DEFINE DELPHI8_OR_ABOVE}
  {$DEFINE DELPHI2005_OR_ABOVE}
  {$DEFINE DELPHI2006_OR_ABOVE}
  {$DEFINE DELPHI2007_OR_ABOVE}
{$ENDIF}

// Delphi .NET 2007
{$IFDEF VER190}
  {$DEFINE DELPHIDOTNET_2007}
  {$DEFINE DELPHI4_OR_ABOVE}
  {$DEFINE DELPHI5_OR_ABOVE}
  {$DEFINE DELPHI6_OR_ABOVE}
  {$DEFINE DELPHI7_OR_ABOVE}
  {$DEFINE DELPHI8_OR_ABOVE}
  {$DEFINE DELPHI2005_OR_ABOVE}
  {$DEFINE DELPHI2006_OR_ABOVE}
  {$DEFINE DELPHI2007_OR_ABOVE}
{$ENDIF}

//Delphi 2009 (Tiburon)
{$IFDEF VER200}
  {$DEFINE DELPHI2009}
  {$DEFINE DELPHI4_OR_ABOVE}
  {$DEFINE DELPHI5_OR_ABOVE}
  {$DEFINE DELPHI6_OR_ABOVE}
  {$DEFINE DELPHI7_OR_ABOVE}
  {$DEFINE DELPHI8_OR_ABOVE}
  {$DEFINE DELPHI2005_OR_ABOVE}
  {$DEFINE DELPHI2006_OR_ABOVE}
  {$DEFINE DELPHI2007_OR_ABOVE}
  {$DEFINE DELPHI2009_OR_ABOVE}
{$ENDIF}

//Delphi 2010 (Weaver)
{$IFDEF VER210}
  {$DEFINE DELPHI2010}
  {$DEFINE DELPHI4_OR_ABOVE}
  {$DEFINE DELPHI5_OR_ABOVE}
  {$DEFINE DELPHI6_OR_ABOVE}
  {$DEFINE DELPHI7_OR_ABOVE}
  {$DEFINE DELPHI8_OR_ABOVE}
  {$DEFINE DELPHI2005_OR_ABOVE}
  {$DEFINE DELPHI2006_OR_ABOVE}
  {$DEFINE DELPHI2007_OR_ABOVE}
  {$DEFINE DELPHI2009_OR_ABOVE}
  {$DEFINE DELPHI2010_OR_ABOVE}
{$ENDIF}

//Delphi XE
{$IFDEF VER220}
  {$DEFINE DELPHIXE}
  {$DEFINE DELPHI4_OR_ABOVE}
  {$DEFINE DELPHI5_OR_ABOVE}
  {$DEFINE DELPHI6_OR_ABOVE}
  {$DEFINE DELPHI7_OR_ABOVE}
  {$DEFINE DELPHI8_OR_ABOVE}
  {$DEFINE DELPHI2005_OR_ABOVE}
  {$DEFINE DELPHI2006_OR_ABOVE}
  {$DEFINE DELPHI2007_OR_ABOVE}
  {$DEFINE DELPHI2009_OR_ABOVE}
  {$DEFINE DELPHI2010_OR_ABOVE}
  {$DEFINE DELPHIXE_OR_ABOVE}
{$ENDIF}